
#ifndef  BREAKPOINTFILE_H
#define  BREAKPOINTFILE_H

#include <string>
#include "IBreakPoint.h"

class BreakPointFile : public IBreakPoint{
public:
    BreakPointFile(const std::string & filePath);
    virtual ~BreakPointFile();

    const long long get() const override;
    void set(const long long seqNo) override;

private:
    void open() const;
    long long readLongLong() const;
    void writeLongLong(const long long seqNo);
    void close() const;
    void flush();
private:
    std::string filePath;
};


#endif   /* BREAKPOINTFILE_H */
